﻿using System;
using mscook.core.domain;
using System.Collections.Generic;
namespace mscook.core.repositories
{
    public interface ILoginUserRepository : IRepository<LoginUser>
    {
        LoginUser SelectLoginUserByLoginName(string LoginName);
        LoginUser SelectLoginUserByLoginNameOrEmail(string loginName, string email);
        //IList<LoginUser> SelectLimitLoginUserByType(bool isAnonymous, int start, int limit, out long total);
        IList<LoginUser> SelectLimitLoginUserByType(bool isAnonymous, int start, int limit, out long total, System.Linq.Expressions.Expression<Func<LoginUser, bool>> expression);
        IList<LoginUser> SelectLimitSystemUser(bool isVip, int start, int limit, out long total, System.Linq.Expressions.Expression<Func<LoginUser, bool>> expression);
        LoginUser UserLogOnSelectByLoginNameOrEmail(string InputValue);
        bool IsNullByLoginNameOrEmail(string loginName, string email);
        bool ValidateLoginUserByPsd(string LoginName, string password);
        bool IsNullByLoginName(string loginName);
        bool IsNullByEmail(string email);
    }
}
